package com.glink.manage.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.util.Date;

/**
* @author  qiushaoshan
* @since 2025-01-08
*/
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "ConstructionWorkBean对象", description = "施工工程")
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "construction_work", resultMap = "BaseResultMap")
public class ConstructionWorkBean extends Model<ConstructionWorkBean> {

    private static final long serialVersionUID = -7882914385128197856L;

    @ApiModelProperty(value = "主键")
    @TableId(value = "obj_id")
    private String objId;

    @ApiModelProperty(value = "项目部")
    private String projectDepartmentObjId;
    
    @ApiModelProperty(value = "工程名称")
    private String workName;

    @ApiModelProperty(value = "负责人")
    private String superintendent;

    @ApiModelProperty(value = "计划工期开始")
    private Date plannedDurationStart;

    @ApiModelProperty(value = "计划工期结束")
    private Date plannedDurationEnd;

    @ApiModelProperty(value = "排序")
    private Integer seq;
    
    @ApiModelProperty(value = "建设状态")
    private String status;

    @ApiModelProperty(value = "工程简介")
    private String introduction;

    @ApiModelProperty(value = "效果图")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String rendering;

    @ApiModelProperty(value = "创建时间")
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    @ApiModelProperty(value = "创建人")
    @TableField(fill = FieldFill.INSERT)
    private String createUser;

    @ApiModelProperty(value = "更新时间")
    @TableField(fill = FieldFill.UPDATE)
    private Date updateTime;

    @ApiModelProperty(value = "更新人")
    @TableField(fill = FieldFill.UPDATE)
    private String updateUser;
}
